#include<stdio.h>

int main(void)
{
    double a[2],*p,*q;

    p=&a[0];  // p指向a[0]
    q=&a[1];  // q指向a[1]
  printf("%ld\n", (long int)q - (long int)p); // 内存地址的差，输出8
    printf("%ld\n", q - p); // 指针的差，输出1

    //因为是double数组(8字节)，p指向第一个元素，q指向第二个元素，所以内存地址的差是8字节 输出是8

    //指针的差是元素的差，之间隔了一个元素差，所以输出1


    //指针相加可能会改变内存地址，没有意义，很少使用

}